package jdepend.client.report.ui;
import java.awt.BorderLayout;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.OutputStream;
import javax.swing.JScrollPane;
import jdepend.framework.ui.dialog.CooperDialog;
import jdepend.model.SubJDependUnit;
import jdepend.client.report.way.textui.JDependPrinter;
public class CohesionSubJDependUnitDialog extends CooperDialog {
private StringBuilder cohesionText;
public CohesionSubJDependUnitDialog(SubJDependUnit unit) {
super(unit.getName() + " 内聚值");
getContentPane().setLayout(new BorderLayout());
printCohesion(unit);
this.add(new JScrollPane((new XMLJDependUtil()).createResult(cohesionText)));
}
private void printCohesion(SubJDependUnit unit) {
OutputStream info = new ByteArrayOutputStream();
JDependPrinter printer = new JDependPrinter();
printer.setStream(info);
printer.printSubJDependUnitCohesion(unit);
printer.getWriter().flush();
cohesionText = new StringBuilder(info.toString());
try {
info.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}